メインコンテンツへスキップ

All Posts

News bits

Third-party cookies の段階的廃止 - Chrome

Chrome は 2024 年 1 月 4 日から Tracking Protection を目的としたサードパーティー Cookie 制限のテストを開始しました。2024 年後半に全てのユーザーに対してサードパーティー Cookie を制限するPrivacy Sandbox initiativeのマイルストーンとして、まずは全ユーザーの 1%に適用されます。

https://blog.google/products/chrome/privacy-sandbox-tracking-protection/

Chrome 115

Chrome 115 がリリース。

出展:New in Chrome 115

#Scroll-driven animations

今まで CSS アニメーションのタイムラインは時間経過のみでしたが、スクロール位置に応じた Scroll Progress Timeline と、特定要素の可視性に応じた View Progress Timeline が利用できるようになりました。

https://developer.chrome.com/articles/scroll-driven-animations/

Scroll Progress Timeline を利用すれば、今まで Web API を利用してスクロール量を取得する必要があったブログ記事の読了割合をページ上部に表示するようなアニメーションを CSS のみで手軽に追加できます。

https://developer.mozilla.org/ja/docs/Web/CSS/scroll-timeline

View Progress Timeline を利用すれば、今まで IntersectionObserver などを利用する必要があった、例えばスクロールしていくと要素がエフェクト付きで飛び出てくるようなアニメーションを CSS のみで実現できます。

https://developer.mozilla.org/en-US/docs/Web/CSS/view-timeline

#2 値構文の display プロパティ

2 値構文の display プロパティが Chrome でもサポートされました。Edge でもそろそろサポートされるようなので、ほぼ全てのモダンブラウザで利用できるようになります。

https://developer.mozilla.org/docs/Web/CSS/display/multi-keyword_syntax_of_display

個人的には、2 値構文の方が flow と flow-root などを認識できるので好きですが、2 値構文は従来の単一構文にマッピングされるため、現状ではあえて利用する理由はなく、あまり積極的には使われないのではないかなと思っています。

従来の単一構文新しい 2 値構文
blockblock flow
flow-rootblock flow-root
inlineinline flow
inline-blockinline flow-root
flexblock flex
inline-flexinline flex
gridblock grid
inline-gridinline grid

#プライバシーサンドボックス APIs

ユーザーのプライバシを保護する一方で企業や開発者には広告などを提供することを目的として、Google が押し進めているプライバシーサンドボックスの準備がいよいよ整ったようです。

https://developer.chrome.com/en/blog/privacy-sandbox-launch/

Chrome 116 までにおよそ 99%のユーザーに対してプライバシーサンドボックス関連の機能が段階的に有効化されていきます。Chrome 115 の記事で紹介されているいくつかの機能もこれに含まれている API です。

以下にプライバシーサンドボックスで有効化される機能をいくつか軽く紹介します。

  • Topics API: サードパーティー Cookie などを用いたユーザーの追跡を廃止していく一方で、適した広告を届けるためにユーザーの興味がある内容を取得する API
  • Protected Audience API: 一度商品やサービスを閲覧したユーザーに対して、リマーケティングを可能にする API
  • Attribution Reporting API: サードパーティ Cookie を利用せずに、広告コンバージョンの測定を可能にする API
  • ストレージパーティショニング: サイトに埋め込まれた iframe は今まで埋め込まれたサイトとストレージを共有できたが、今後は分離される。
  • Fenced frames: プライバシーに配慮した iframe を実現する fencedframes 要素。この要素では埋め込んだサイトと埋め込まれたサイト間でデータのやりとりが行えない。

詳しい内容については、以下のプライバシーサンドボックスについてのドキュメントを見ると良いと思います。

https://developer.chrome.com/ja/docs/privacy-sandbox/

#ストレージパーティショニング

プライバシーサンドボックスに含まれるストレージパーティショニングについては、New in Chrome 115に記載されている以下の図が分かりやすいです。

これによりサイト間で広告事業者などがユーザーの行動を追跡する手段が 1 つ失われますが、これにより稀に見かける iframe で共通のサイトを参照することで異なるドメイン間でログイン情報などを共有するようなことが出来なくなります。

ストレージを共有する方法の代替として Shared Storage API などが紹介されていますが、この機能もプライバシーサンドボックスに含まれているため、過渡期ではストレージパーティショニングが有効化されている一方で Shared Storage API が利用できないユーザーが発生します。

https://github.com/WICG/shared-storage

#Topics API

プライバシーサンドボックスに含まれる Topics API を利用すれば、ユーザーを追跡することなくユーザーの興味がある情報を取得できます。

https://developer.chrome.com/docs/privacy-sandbox/topics/demo/

機能が有効化されていれば、chrome://topics-internals/ で今自分の興味あるものとして登録されているものを確認することが出来ます。

著者について

Hi there. I'm hrdtbs, a frontend expert and technical consultant. I started my career in the creative industry over 13 years ago, learning on the job as a 3DCG modeler and game engineer in the indie scene.

In 2015 I began working as a freelance web designer and engineer. I handled everything from design and development to operation and advertising, delivering comprehensive solutions for various clients.

In 2016 I joined Wemotion as CTO, where I built the engineering team from the ground up and led the development of core web and mobile applications for three years.

In 2019 I joined matsuri technologies as a Frontend Expert, and in 2020 I also began serving as a technical manager supporting streamers and content creators.

I'm so grateful to be working in this field, doing something that brings me so much joy. Thanks for stopping by.